package com.marvels.financial.consum;


import java.util.List;

import com.marvels.financial.collection.dto.MclaRelationInfoDTO;
import com.marvels.financial.loan.dto.CheckBillDTO;
import com.marvels.financial.loan.dto.LaAttachmentDto;
import com.marvels.financial.loan.dto.MclaLoanApplyLinkmanDTO;
import com.marvels.financial.loan.dto.MclaUserBankDTO;


/**
 * 调用外部应用服务接口
 * name：外部应用名称
 * fallback：调用外部服务失败的实现类
 * @RequestMapping：外部服务的uri
 * @RequestParam：外部服务的入参
 * @author wangliang
 *
 */
public interface FinancialConsumerLoanApplyApi {
	/**
	 * 附件信息
	 * @param atmtType
	 * @param loanIds
	 * @param fileId
	 * @return
	 */
	public List<LaAttachmentDto> achieveAttachInfo(LaAttachmentDto laAttachmentDto);
	
	/**
	 * 合同对应的附件信息
	 * @param fileId
	 * @param loanIds
	 * @return
	 */
	List<LaAttachmentDto> compactAttach(LaAttachmentDto laAttachmentDto);
	
	/**
	 * 通过loanId查询所有联系人信息
	 * @param dto
	 * @return
	 */
	public List<MclaLoanApplyLinkmanDTO> selectByLoanId(MclaLoanApplyLinkmanDTO dto);
	
	/**
	 * 通过银行卡号查询银行卡类型
	 * @param dto
	 * @return
	 */
	public MclaUserBankDTO selectCardType(MclaUserBankDTO dto);
	
	/**
	 * 亲属关系信息
	 * @param dto
	 * @return
	 */
	public List<MclaRelationInfoDTO>  shipList(MclaRelationInfoDTO dto);
	
	/**
	 * 获取该时间段内指定续贷用户
	 * @param param
	 * @return
	 */
	public String  selectContinueLoanUser(CheckBillDTO dto);
	
	/**
	 * 同步进件表的放款时间
	 * @param param
	 * @return
	 */
	public String synchroMoneyHandOutTime(String loanId);
	
}
